#ifndef __history_h__
#define __history_h__

/* Forward Declarations */

struct ENUMDESC;

/* header files for imported files */
#include "types.h"

#ifndef __IOmHistory_FWD_DEFINED__
#define __IOmHistory_FWD_DEFINED__
typedef interface IOmHistory IOmHistory;
#endif     /* __IOmHistory_FWD_DEFINED__ */

#ifndef __IHTMLMimeTypesCollection_FWD_DEFINED__
#define __IHTMLMimeTypesCollection_FWD_DEFINED__
typedef interface IHTMLMimeTypesCollection IHTMLMimeTypesCollection;
#endif     /* __IHTMLMimeTypesCollection_FWD_DEFINED__ */

#ifndef __IHTMLPluginsCollection_FWD_DEFINED__
#define __IHTMLPluginsCollection_FWD_DEFINED__
typedef interface IHTMLPluginsCollection IHTMLPluginsCollection;
#endif     /* __IHTMLPluginsCollection_FWD_DEFINED__ */

#ifndef __IHTMLOpsProfile_FWD_DEFINED__
#define __IHTMLOpsProfile_FWD_DEFINED__
typedef interface IHTMLOpsProfile IHTMLOpsProfile;
#endif     /* __IHTMLOpsProfile_FWD_DEFINED__ */

#ifndef __IOmNavigator_FWD_DEFINED__
#define __IOmNavigator_FWD_DEFINED__
typedef interface IOmNavigator IOmNavigator;
#endif     /* __IOmNavigator_FWD_DEFINED__ */

#ifndef __IHTMLLocation_FWD_DEFINED__
#define __IHTMLLocation_FWD_DEFINED__
typedef interface IHTMLLocation IHTMLLocation;
#endif     /* __IHTMLLocation_FWD_DEFINED__ */

#ifndef __IOmHistory_INTERFACE_DEFINED__

#define __IOmHistory_INTERFACE_DEFINED__

EXTERN_C const IID IID_IOmHistory;


MIDL_INTERFACE("FECEAAA2-8405-11cf-8BA1-00AA00476DA6")
IOmHistory : public IDispatch
{
public:
    virtual HRESULT STDMETHODCALLTYPE get_length(
         /* [out] */ short * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE back(
            /* [in] */ VARIANT* pvargdistance) = 0;

    virtual HRESULT STDMETHODCALLTYPE forward(
            /* [in] */ VARIANT* pvargdistance) = 0;

    virtual HRESULT STDMETHODCALLTYPE go(
            /* [in] */ VARIANT* pvargdistance) = 0;

};

#endif     /* __IOmHistory_INTERFACE_DEFINED__ */


#ifndef __IHTMLMimeTypesCollection_INTERFACE_DEFINED__

#define __IHTMLMimeTypesCollection_INTERFACE_DEFINED__

EXTERN_C const IID IID_IHTMLMimeTypesCollection;


MIDL_INTERFACE("3050f3fc-98b5-11cf-bb82-00aa00bdce0b")
IHTMLMimeTypesCollection : public IDispatch
{
public:
    virtual HRESULT STDMETHODCALLTYPE get_length(
         /* [out] */ long * p) = 0;

};

#endif     /* __IHTMLMimeTypesCollection_INTERFACE_DEFINED__ */


#ifndef __IHTMLPluginsCollection_INTERFACE_DEFINED__

#define __IHTMLPluginsCollection_INTERFACE_DEFINED__

EXTERN_C const IID IID_IHTMLPluginsCollection;


MIDL_INTERFACE("3050f3fd-98b5-11cf-bb82-00aa00bdce0b")
IHTMLPluginsCollection : public IDispatch
{
public:
    virtual HRESULT STDMETHODCALLTYPE get_length(
         /* [out] */ long * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE refresh(
            /* [in] */ VARIANT_BOOL reload) = 0;

};

#endif     /* __IHTMLPluginsCollection_INTERFACE_DEFINED__ */


#ifndef __IHTMLOpsProfile_INTERFACE_DEFINED__

#define __IHTMLOpsProfile_INTERFACE_DEFINED__

EXTERN_C const IID IID_IHTMLOpsProfile;


MIDL_INTERFACE("3050f401-98b5-11cf-bb82-00aa00bdce0b")
IHTMLOpsProfile : public IDispatch
{
public:
    virtual HRESULT STDMETHODCALLTYPE addRequest(
            /* [in] */ BSTR name,/* [in] */ VARIANT reserved,/* [out] */ VARIANT_BOOL* success) = 0;

    virtual HRESULT STDMETHODCALLTYPE clearRequest(
            ) = 0;

    virtual HRESULT STDMETHODCALLTYPE doRequest(
            /* [in] */ VARIANT usage,/* [in] */ VARIANT fname,/* [in] */ VARIANT domain,/* [in] */ VARIANT path,/* [in] */ VARIANT expire,/* [in] */ VARIANT reserved) = 0;

    virtual HRESULT STDMETHODCALLTYPE getAttribute(
            /* [in] */ BSTR name,/* [out] */ BSTR* value) = 0;

    virtual HRESULT STDMETHODCALLTYPE setAttribute(
            /* [in] */ BSTR name,/* [in] */ BSTR value,/* [in] */ VARIANT prefs,/* [out] */ VARIANT_BOOL* success) = 0;

    virtual HRESULT STDMETHODCALLTYPE commitChanges(
            /* [out] */ VARIANT_BOOL* success) = 0;

    virtual HRESULT STDMETHODCALLTYPE addReadRequest(
            /* [in] */ BSTR name,/* [in] */ VARIANT reserved,/* [out] */ VARIANT_BOOL* success) = 0;

    virtual HRESULT STDMETHODCALLTYPE doReadRequest(
            /* [in] */ VARIANT usage,/* [in] */ VARIANT fname,/* [in] */ VARIANT domain,/* [in] */ VARIANT path,/* [in] */ VARIANT expire,/* [in] */ VARIANT reserved) = 0;

    virtual HRESULT STDMETHODCALLTYPE doWriteRequest(
            /* [out] */ VARIANT_BOOL* success) = 0;

};

#endif     /* __IHTMLOpsProfile_INTERFACE_DEFINED__ */


#ifndef __IOmNavigator_INTERFACE_DEFINED__

#define __IOmNavigator_INTERFACE_DEFINED__

EXTERN_C const IID IID_IOmNavigator;


MIDL_INTERFACE("FECEAAA5-8405-11cf-8BA1-00AA00476DA6")
IOmNavigator : public IDispatch
{
public:
    virtual HRESULT STDMETHODCALLTYPE get_appCodeName(
         /* [out] */ BSTR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_appName(
         /* [out] */ BSTR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_appVersion(
         /* [out] */ BSTR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_userAgent(
         /* [out] */ BSTR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE javaEnabled(
            /* [out] */ VARIANT_BOOL* enabled) = 0;

    virtual HRESULT STDMETHODCALLTYPE taintEnabled(
            /* [out] */ VARIANT_BOOL* enabled) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_mimeTypes(
         /* [out] */ IHTMLMimeTypesCollection* * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_plugins(
         /* [out] */ IHTMLPluginsCollection* * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_cookieEnabled(
         /* [out] */ VARIANT_BOOL * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_opsProfile(
         /* [out] */ IHTMLOpsProfile* * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE toString(
            /* [out] */ BSTR* string) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_cpuClass(
         /* [out] */ BSTR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_systemLanguage(
         /* [out] */ BSTR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_browserLanguage(
         /* [out] */ BSTR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_userLanguage(
         /* [out] */ BSTR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_platform(
         /* [out] */ BSTR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_appMinorVersion(
         /* [out] */ BSTR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_connectionSpeed(
         /* [out] */ long * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onLine(
         /* [out] */ VARIANT_BOOL * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_userProfile(
         /* [out] */ IHTMLOpsProfile* * p) = 0;

};

#endif     /* __IOmNavigator_INTERFACE_DEFINED__ */


#ifndef __IHTMLLocation_INTERFACE_DEFINED__

#define __IHTMLLocation_INTERFACE_DEFINED__

EXTERN_C const IID IID_IHTMLLocation;


MIDL_INTERFACE("163BB1E0-6E00-11cf-837A-48DC04C10000")
IHTMLLocation : public IDispatch
{
public:
    virtual HRESULT STDMETHODCALLTYPE put_href(
         /* [in] */ BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_href(
         /* [out] */ BSTR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_protocol(
         /* [in] */ BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_protocol(
         /* [out] */ BSTR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_host(
         /* [in] */ BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_host(
         /* [out] */ BSTR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_hostname(
         /* [in] */ BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_hostname(
         /* [out] */ BSTR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_port(
         /* [in] */ BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_port(
         /* [out] */ BSTR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_pathname(
         /* [in] */ BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_pathname(
         /* [out] */ BSTR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_search(
         /* [in] */ BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_search(
         /* [out] */ BSTR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_hash(
         /* [in] */ BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_hash(
         /* [out] */ BSTR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE reload(
            /* [in] */ VARIANT_BOOL flag) = 0;

    virtual HRESULT STDMETHODCALLTYPE replace(
            /* [in] */ BSTR bstr) = 0;

    virtual HRESULT STDMETHODCALLTYPE assign(
            /* [in] */ BSTR bstr) = 0;

    virtual HRESULT STDMETHODCALLTYPE toString(
            /* [out] */ BSTR* string) = 0;

};

#endif     /* __IHTMLLocation_INTERFACE_DEFINED__ */



EXTERN_C const GUID GUID_HTMLHistory;


#ifndef _COmHistory_PROPDESCS_
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmHistorylength;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOmHistoryback;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOmHistoryforward;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOmHistorygo;

#endif


EXTERN_C const GUID GUID_;


#ifndef _CMimeTypes_PROPDESCS_
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCMimeTypeslength;

#endif


EXTERN_C const GUID GUID_;


#ifndef _CPlugins_PROPDESCS_
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCPluginslength;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCPluginsrefresh;

#endif


EXTERN_C const GUID GUID_;


#ifndef _COpsProfile_PROPDESCS_
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOpsProfileaddRequest;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOpsProfileclearRequest;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOpsProfiledoRequest;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOpsProfilegetAttribute;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOpsProfilesetAttribute;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOpsProfilecommitChanges;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOpsProfileaddReadRequest;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOpsProfiledoReadRequest;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOpsProfiledoWriteRequest;

#endif


EXTERN_C const GUID GUID_HTMLNavigator;


#ifndef _COmNavigator_PROPDESCS_
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmNavigatorappCodeName;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmNavigatorappName;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmNavigatorappVersion;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmNavigatoruserAgent;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOmNavigatorjavaEnabled;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOmNavigatortaintEnabled;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmNavigatormimeTypes;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmNavigatorplugins;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmNavigatorcookieEnabled;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmNavigatoropsProfile;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOmNavigatortoString;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmNavigatorcpuClass;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmNavigatorsystemLanguage;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmNavigatorbrowserLanguage;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmNavigatoruserLanguage;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmNavigatorplatform;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmNavigatorappMinorVersion;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmNavigatorconnectionSpeed;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmNavigatoronLine;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmNavigatoruserProfile;

#endif


EXTERN_C const GUID GUID_HTMLLocation;


#ifndef _COmLocation_PROPDESCS_
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmLocationhref;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmLocationprotocol;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmLocationhost;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmLocationhostname;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmLocationport;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmLocationpathname;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmLocationsearch;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescCOmLocationhash;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOmLocationreload;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOmLocationreplace;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOmLocationassign;
EXTERN_C const PROPERTYDESC_METHOD s_methdescCOmLocationtoString;

#endif


#endif /*__history_h__*/

